Generation of statistical information in a computer network

ABSTRACT

In one embodiment, statistical information is generated in a computer network by detecting reception of documents in a client computer. A server computer is notified of the reception of the documents to allow the server computer to generate statistical information indicative of the effectiveness of an advertising campaign. The documents may comprise web pages, while the computer network may comprise the Internet.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates generally to computer systems, andmore particularly but not exclusively to methods and apparatus forgenerating statistical information in a computer network.

[0003] 2. Description of the Background Art

[0004] Large public computer networks, such as the Internet, allowadvertisers to reach a worldwide audience twenty-four hours a day, sevendays a week. This has made large public networks a cost-effective mediumfor marketing and selling products (e.g., goods and services). On theInternet, for example, advertising revenues allow companies todistribute free software or provide free access to websites. Needless tosay, advertising helps fuel the Internet economy.

[0005] A company may advertise products in its own website. It may alsoadvertise products in popular websites, such as search engines orportals. Regardless of whether a company chooses to run advertisementsin its own or third-party website, an advertising campaign involvessignificant costs not just in running the campaign, but also in lostsales due to ineffective advertising. Thus, a technique for determiningthe efficacy of an advertising campaign is generally desirable.

SUMMARY

[0006] The present invention relates to methods, apparatus, and systemsfor generating statistical information in a computer network. Thepresent invention may be employed. in a wide variety of data processingapplications, including advertising on the Internet.

[0007] In one embodiment, statistical information is generated in acomputer network by detecting reception of documents in a clientcomputer. A server computer is notified of the reception of thedocuments to allow the server computer to generate statisticalinformation indicative of the effectiveness of an advertising campaign.The documents may comprise web pages, while the computer network maycomprise the Internet.

[0008] These and other features of the present invention will be readilyapparent to persons of ordinary skill in the art upon reading theentirety of this disclosure, which includes the accompanying drawingsand claims.

DESCRIPTION OF THE DRAWINGS

[0009]FIG. 1 shows a schematic diagram of a computer network 100 inaccordance with an embodiment of the present invention.

[0010]FIG. 2 schematically illustrates the operation of a clientcomputer in accordance with an embodiment of the present invention.

[0011]FIG. 3 schematically illustrates the operation of a message servercomputer in accordance with an embodiment of the present invention.

[0012]FIG. 4 shows a method of generating statistical information in acomputer network in accordance with an embodiment of the presentinvention.

[0013]FIG. 5 shows a user interface for entering a sequence ofconversion steps in accordance with an embodiment of the presentinvention.

[0014]FIG. 6 shows a user interface for entering keywords that will betracked in accordance with an embodiment of the present invention.

[0015]FIG. 7 shows a user interface for configuring a report inaccordance with an embodiment of the present invention.

[0016]FIG. 8 shows a user interface for presenting a report inaccordance with an embodiment of the present invention.

[0017] The use of the same reference label in different drawingsindicates the same or like components.

DETAILED DESCRIPTION

[0018] In the present disclosure, numerous specific details are providedsuch as examples of systems, components, and methods to provide athorough understanding of embodiments of the invention. Persons ofordinary skill in the art will recognize, however, that the inventioncan be practiced without one or more of the specific details. In otherinstances, well-known details are not shown or described to avoidobscuring aspects of the invention.

[0019]FIG. 1 shows a schematic diagram of a computer network 100 inaccordance with an embodiment of the present invention. Network 100 mayinclude one or more client computers 110 (i.e., 110A, 110B, . . . ), oneor more web server computers 120 (i.e., 120A, 120B, . . . ), one or morevendor server computers 130 (i.e., 130A, 130B, . . . ), one or moremessage server computers 140, and other computers not shown.Intermediate nodes such as gateways, routers, bridges, Internet serviceprovider networks, public-switched telephone networks, proxy servers,firewalls, and other network components are not shown in the interest ofclarity. In the example of FIG. 1, network 100 includes the Internet.However, other types of computer networks may also be used. Computersmay be coupled to network 100 using any type of connection withoutdetracting from the merits of the present invention.

[0020] A client computer 110 is typically, but not necessarily, apersonal computer such as those running the Microsoft Windows™ operatingsystem, for example. A web server computer 120, a vendor server computer130, and a message server computer 140 are typically, but notnecessarily, server computers such as those available from SunMicrosystems, Hewlett-Packard, or International Business Machines. Aclient computer 110 and a server computer may communicate usingclient-server protocol. It is to be noted that as used in the presentdisclosure, the term “computer” includes any type of data processingdevice including personal digital assistants, digital telephones,wireless terminals, and the like.

[0021] An end-user may employ a suitably equipped client computer 110 toget on network 100 and access computers coupled thereto. For example, aclient computer 110 may be used to request a web page from a web servercomputer 120, a vendor server computer 130, or a message server computer140. In that case, the requested web page is downloaded to the clientcomputer 110 for viewing by the end-user. For purposes of the presentdisclosure, “requesting a web page” has the same meaning as using a webbrowser to “navigate” to, “reach,” “view,” or “access” the web page.Those of ordinary skill in the art will understand the meaning of thejust mentioned words as they are used in the context of the Internet.

[0022]FIG. 1 also shows relevant components of a client computer 110, aweb server. computer 120, a vendor server computer 130, and a messageserver computer 140. As can be appreciated, components in the presentdisclosure, such as those shown in FIGS. 1, 2, and 3, may be implementedin hardware, software, or a combination of hardware and software (e.g.,firmware). Software components may be in the form of computer-readableprogram code stored in a computer-readable storage medium such asmemory, mass storage device, or removable storage device. For example, acomputer-readable medium may comprise computer-readable code forperforming the function of a particular component. Likewise, computermemory may be configured to include one or more components, which maythen be run by a microprocessor. Components may be implementedseparately in multiple modules or together in a single module.

[0023] A client computer 110 may include a web browser 112, a logmanager 114, and a log 116. Web browser 112 may be a commerciallyavailable web browser or web client. In one embodiment, web browser 112comprises the Microsoft Internet Explorer™ web browser.

[0024] Log manager 114 may comprise computer-readable program code formonitoring the browsing activity of an end-user on a client computer110, and for creating and maintaining log 116. In one embodiment, logmanager 114 monitors web browser 112 for end-user browsing activities,such as when an end-user clicks on an advertisement or when the end-usernavigates to a particular website. It is to be noted that the mechanicsof monitoring an end-user's browsing activity, such as determining wherean end-user is navigating to, what an end-user is typing on a web page,when an end-user activates a mouse or keyboard, and the like, is, ingeneral, known in the art and not further described here. For example,log manager 114 may learn of end-user browsing activities by receivingevent notifications from web browser 112.

[0025] In one embodiment, log manager 114 is triggered to update log 116whenever an end-user navigates to a particular website or domain,receives a particular web page, or interacts with a portion of a webpage (e.g., uses a mouse to click on an advertisement). For example, alist of addressing information, such as a list of domain names oruniform resource locators (URLs), may be received by a client computer110 from message server computer 140. Log manager 114 may consult thatlist to determine whether or not to update log 116. As a specificexample, log manager 114 may be triggered to update log 116 when theend-user navigates to a web page with the URL“http://www.traveltime.com/cheapvacations.html” or when the end-userclicks on an advertisement that links to a web page with a URLcontaining “traveltime” (e.g., “hftp://www.traveltime.com/code&EAB35h”).

[0026] Log 116 may comprise a file or data structure. In one embodiment,log manager 114 employs log 116 to record triggering events. Forexample, log manager 114 may update log 116 to include a log entryindicating that an end-user navigated to a web page in the domain“traveltime.com.” The log entry may include a timestamp indicating whenthe end-user navigated to a traveltime.com web page. In one embodiment,the end-user is identified using an anonymous machine identifier(“machine ID”) assigned to the end-user's client computer 110, insteadof personal identifiable information. This protects the end-user'sprivacy. Log 116 may be periodically provided to a message servercomputer 140, where log 116 is processed for the purpose of generatingstatistical information. For example, log manager 114 may provide log116 to a message server computer 140 every twenty-four hours.

[0027] Techniques for monitoring for triggering events and end-userbrowsing activities are also disclosed in commonly-assigned U.S.application Ser. No. 10/152,204, filed on May 21, 2002 by Scott G.Eagle, David L. Goulden, Anthony G. Martin, and Eugene A. Veteska, whichis incorporated herein by reference in its entirety. For example, themessage delivery program disclosed in the just mentioned application maybe used to look for particular URLs and report them to a message servercomputer for processing.

[0028] Still referring to FIG. 1, a web servercomputer 120 may include acontent 121 (i.e., 121A, 121B, . . . ) and an advertisement 122 (i.e.,122A, 122B, . . . ). A content 121 may include, without limitation,information to be displayed on a computer screen, text, graphics,pictures, audio to be played, search result or pointers to web pagecontaining search results, computer-readable program code (e.g., Javaapplet, script, HTML, hyperlink), and other types of informationaccessible over the Internet. A content 121 may be in a document, suchas a web page. For example, a content 121 may comprise news provided ina web page. A web server computer 120 attracts traffic by providing acontent 121 that may be of interest to its target audience.

[0029] An advertisement 122 may contain information relating to products(i.e., goods and services), such as cars, websites, movies, stores, jobopenings, streaming videos, on-line databases, video games, hotels,rental cars, vacation packages, watches, etc. It should be understood,however, that an advertisement 122 may be any type of impressionpresented in a computer screen, and does not have to be commercial innature. For example, an advertisement 122 may also be related to anelection (e.g., “vote for Mr. Candidate”), a warning (“flash floods inCalifornia, click here for more info”), and other non-product relatedinformation.

[0030] An advertisement 122 may be displayed in a pop-up, pop-under,banner, slider, and other types of presentation vehicles. Anadvertisement 122 may be included as part of a content 121. For example,a search result may contain links to vendor websites. In other words, anend-user performing an “Internet search” for “cars” may be provided asearch result containing a link to a car manufacturer or dealer.Advertisement 122 may be displayed as part of a web page or in aseparate window (e.g., pop-up or pop-under). A web server computer 120may generate revenue by providing advertisements 122 along with webpages provided to client computers 110. For example, the entity (e.g.,corporation or individual) operating a web server computer 120 maycharge for each impression of an advertisement 122 or for each end-userinteracting with an advertisement 122 (also known as “per click rate”).

[0031] A vendor server computer 130 may be a website offering orcontaining information about products 131 (i.e., 131A, 131B, . . . ).Products 131 may be goods or services. A product 131 may be advertisedin an advertisement 122. For example, a product 131A may comprise abook, while a vendor server computer 130A may be an on-line bookstore.An advertisement 122A for the book may be placed in web server computer120A, which may be an Internet portal. End-users browsing on web servercomputer 120A may click on advertisement 122A to be directed to a webpage of vendor server computer 130A (also known as a “landing page”). Invendor server computer 130A, an end-user may complete the purchase ofthe book by placing the book in an electronic shopping cart, proceedingto check-out, and then getting a web page confirming the purchase (alsoknown as a “confirmation page”).

[0032] There may be several levels of redirection between anadvertisement 122 and a vendor server computer 130. For example,advertisement 122A may be a hyperlink to vendor server computer 130A,with the hyperlink being a line item in a search result generated by aserver computer other than web server computer 120A. Specifically, theoperator of vendor server computer 130A may contract with the operatorof a search server computer (not shown) to display impressions of aproduct 131A to end-users performing an Internet search using thekeyword “books.” The operator of the search server computer, in turn,may contract with the operator of web server computer 120A to providesearch results to end-users using web server computer 120A as a searchengine. Thus, when an end-user employs web server computer 120A tosearch for “books,” web server computer 120A may pass the keyword“books” to the search server computer. The search server computer maythen serve a search result to a web page received by the end-user fromweb server computer 120A. One of the line items in the just mentionedsearch result may be a hyperlink to a landing page in vendor servercomputer 130A.

[0033] Techniques for delivering advertisements based on keywordsearches are also disclosed in commonly-assigned U.S. application Ser.No. 10/289,123, filed on Nov. 5, 2002 by Eugene A. Veteska, David L.Goulden, and Anthony G. Martin, which is incorporated herein byreference in its entirety.

[0034] Still referring to FIG. 1, a message server computer 140 maycomprise a database 141, a conversion tracker 142, and a statisticsmanager 143.

[0035] Database 141 may be a commercially available database software,such as those available from the Oracle Corporation of Redwood City,Calif. As will be later explained in connection with FIG. 3, database141 may include a translation table for storing a sequence of steps(also referred to as “conversion steps”) an end-user undertakes toconvert an interaction with an impression. For example, the translationtable may store a sequence of web pages that an end-user navigatesthrough to convert a clicking of an advertisement into a purchase.Database 141 may also include additional tables for decoding pageidentifiers (e.g., URL), and for storing statistical and trackingrelated information.

[0036] Conversion tracker 142 may comprise computer-readable programcode for determining if an end-user has converted an interaction with animpression, and for decoding page identifiers. Conversion tracker 142may employ database 141 for storage and retrieval of conversion stepsand tracking related information. Conversion tracker 142 may beimplemented in or separately from database 141.

[0037] Statistics manager 143 may comprise computer-readable programcode for generating statistical information. Examples of statisticalinformation that may be generated by statistics manager 143 include,without limitation, pages viewed or not viewed by end-users, percentageof end-users that converted an interaction with an advertisement into apurchase, number of interactions with a particular advertisementdisplayed in a particular website, number of times an advertisement isdisplayed, click through rate of an advertisement, etc. Statisticsmanager 143 may generate statistical information based on a log 116received from a client computer 110, data from conversion tracker 142,and/or auxiliary data received from other sources (e.g., a vendor servercomputer 130).

[0038]FIG. 2 schematically illustrates the operation of a clientcomputer 110 in accordance with an embodiment of the present invention.In one embodiment, pages 202 (i.e., 202A, 202B . . . ) comprise webpages. However, pages 202 may also comprise other types of documents,files, information, or data accessible over a computer network.

[0039] In the example of FIG. 2, advertising page 202A is a web page ofweb server computer 120A. Advertising page 202A may includeadvertisement 122A and a page identifier 210A. Advertising page 202A maybe a web page containing general information, such as news or maps, or asearch result. In the former case, advertisement 122A may be a banner orpop-up advertising for a product. In the case where advertising page202A is a search result, advertisement 122A may be a hyperlinked lineitem in the search result.

[0040] A page identifier 210 (i.e., 210A, 210B, . . . ) serves as anidentifying information for a document. For example, a page identifier210 may comprise a URL of a web page. That is, page identifier 210A maycomprise the URL of advertising page 202A, page identifier 210B maycomprise the URL of landing page 202B, and so on. As can be appreciated,a page identifier is not limited to URLs or other addressinginformation. For example, a page identifier 210 may also be a tag, atext, graphics, an object, or anything that can employed to identify adocument.

[0041] In one embodiment, log manager 114 monitors the browsing activityof an end-user on a client computer 110, which is client computer 110Ain this example. Log manager 114 may be configured to make a log entry117 (i.e., 117-1, 117-2, . . . ) in log 116 whenever the end-userperforms a triggering event, such as navigating to a particular web pageor domain. For example, log manager 114 may be configured to make a logentry 117 whenever the end-user navigates to an advertising page 202A inthe domain “traveltime.com.”

[0042] In one embodiment, a log entry 117 includes a machine ID field, apage identifier field, and a time stamp field. Depending on theapplication, a log entry 117 may also have additional or less fields. Inthe example of FIG. 2, “machine ID” identifies client computer 110A,“page identifier” includes the URL of a web page, and “time stamp”indicates the time and date the log entry was made. As a specificexample, upon receiving advertising page 202A in client computer 110A,log manager 114 may make a log entry 117-1 indicating that the end-user(identified by the machine ID) navigated to advertising page 202A(identified by the page identifier) at a particular date and time(indicated in the time stamp). Log manager 114 may make a log entry 117based on its monitoring of web browser 112. For example, log manager 117may monitor web browser 112 for end-user navigation to a web page havinga page identifier 210A, 210B, 210C, 210D, or 210E.

[0043] Advertisement 122A may include a pointer to landing page 202B.For example, advertisement 122A may include a hyperlink to a web pagehaving a page identifier 210B (which may be a URL). In that case, anend-user clicking on advertisement 122A will reach landing page 202B.Upon receiving landing page 202B in client computer 110A, log manager114 may make a log entry 117-2 indicating that the end-user (identifiedby the machine ID) navigated to landing page 202B (identified by thepage identifier) at a particular date and time (indicated in the timestamp). Log manager 114 makes similar log entries 117 upon receivingintermediate page 202C, intermediate page 202D, and confirmation page202E in client computer 110A.

[0044] Landing page 202B, intermediate pages 202C and 202D, andconfirmation page 202E are typically, but not necessarily, web pages inthe same domain. In the example of FIG. 2, landing page 202B,intermediate pages 202C and 202D, and confirmation page 202E are in thedomain associated with vendor server computer 130A (see FIG. 1). Landingpage 202B is so named because it is the web page where the end-user“lands” after clicking on advertisement 122A.

[0045] Intermediate pages 202C and 202D represent intervening web pagesbetween landing page 202B and confirmation page 202E. In the bookstoreexample, intermediate page 202C may be a web page for viewing thecontents of an electronic shopping cart, while intermediate page 202Dmay be a web page for entering payment and shipping information.

[0046] Confirmation page 202E may be a web page confirming that aconversion has been made. Confirmation page 202E is typically, but notnecessarily, the last step in a sequence of conversion steps. In thebookstore example, confirmation page 202E comprises a web pageconfirming the book has been purchased. Confirmation page 202E may showa confirmation number and other information relating to the purchase.The end-user may print confirmation page 202E as a hard-copy receipt.

[0047] As can be appreciated, the number of web pages after advertisingpage 202A may vary depending on the application. For example, landingpage 202B and confirmation page 202E may be the same web page, thusobviating the need for intermediate pages and a separate confirmationpage. As another example, there may be additional web pages betweenintermediate pages 202C and 202D.

[0048]FIG. 3 schematically illustrates the operation of a message servercomputer 140 in accordance with an embodiment of the present invention.Database 141 in message server computer 140 may include a translationtable 310. Translation table 310 may comprise slots 311 (i.e., 311-1,311-2, . . . ) for each step in a sequence of conversion steps. That is,slot 311-1 may include information for the first step of a sequence ofconversion steps, slot 311-2 may include information for the second stepof the sequence of conversion steps, and so on. In one embodiment, theconversion steps comprise web pages, with each web page being referencedusing its page identifier. For example, the steps of purchasing a bookfrom vendor server computer 130A may include receiving landing page 202Band confirmation page 202E. In that example, slot 311-1 may indicate allor a portion of page identifier 210B, while slot 311-2 may indicate allor a portion of page identifier 210E. More specifically, slot 311-1 maycontain the name of the html document of page 202B, and slot 311-2 maycontain the name of the html document of page 202E. Note that database141 may have several translation tables 310, one for each sequence ofconversion steps.

[0049] In one embodiment, a page identifier 210 is coded such that itidentifies the source of the traffic (i.e., the domain the end-user camefrom), the triggering event (i.e., the cause of the logging), and otherinformation (e.g., keywords). For example, page identifier 210B may be aURL having the following format:

[0050] “bookstore.com/fiction.html/source=searchnow&kw=best+seller”

[0051] In the above example, “bookstore.com” is the domain nameassociated with vendor server computer 130A, “fiction.html” is the nameof the html file of landing page 202B, “searchnow” identifies the sourceof the traffic, which is web server computer 120A in this example, and“best+seller” indicates that the end-user received “fiction.html” as aresult of clicking on a line item of a search result for the keywords“best” and “seller” (the triggering event). Of course, the coding of apage identifier will vary depending on the application.

[0052] Still referring to FIG. 3, message server computer 140periodically receives a log 116 from a client computer 110. Conversiontracker 142 parses log entries 117 of received log 116. For each logentry 117, conversion tracker 142 determines the source of the traffic,triggering event, keywords, and other information coded in a pageidentifier. For each log entry 117, conversion tracker 142 alsodetermines if and when the end-user on a client computer 110 has visiteda web page listed in slots 311 of translation table 310. If the end-userhas visited all web pages listed in all slots 311 of a translation table310, conversion tracker 142 deems that a conversion has taken place(e.g., that an end-user converted the clicking of an advertisement intoa purchase).

[0053] In one embodiment, conversion tracker 142 requires that each webpage listed in slots 311 of translation table 310 be received in aclient computer 110 in a specified order and within a certain amount oftime to deem that a conversion has taken place. In other words,conversion tracker 142 may be configured to require an end-user to firstreceive a web page indicated in slot 311-1, followed by a web pageindicated in slot 311-2, and so on. In addition, conversion tracker 142may be configured to require the web page indicated in slot 311-2 bereceived within a certain amount of time after reception of the web pageindicated in slots 311-1. As a specific example, conversion tracker 142may be configured to require an end-user to reach landing page 202B,then intermediate page 202C, and then confirmation page 202E, in thatorder, within a 60-minute period. Conversion tracker 142 may determinewhen and in what order web pages were received in a client computer 110from the time stamp of each log entry 117.

[0054] Statistics manager 143 generates statistical information based onlog entries 117 and data from conversion tracker 142. Statistics manager143 may generate statistical information regarding traffic from aparticular web server computer 120, web pages reached or not reached byend-users, triggering events, conversions, click-throughs, and so on.

[0055] Statistics manager 143 may also generate statistical informationbased on auxiliary data 321. Auxiliary data 321 may be received from avendor server computer 130. In one embodiment, auxiliary data 321comprise information not readily available or derivable from a log 116.For example, auxiliary data 321 may include information relating to thetotal number of times an advertisement 122 has been displayed in a webserver computer 120, the number of web server computers 120 contractedto display an advertisement 122, etc.

[0056]FIG. 4 shows a method 400 of generating statistical information ina computer network in accordance with an embodiment of the presentinvention. Method 400 will be described using network 100 shown in FIG.1 as an example. It should be understood, however, that method 400 isnot so limited and may also be implemented in other computer networks.In FIG. 4, steps performed in a client computer 110 are shown on the“client side”, while steps performed in a message server computer 140are shown on the “server side.”

[0057] Beginning in step 402, log manager 114 detects reception ofadvertising page 202A in client computer 110A (see FIG. 2). Advertisingpage 202A may be received in client computer 110A when an end-useremploys web browser 112 to navigate to web server computer 120A (seeFIG. 1).

[0058] In steps 404, 406, and 408, log manager 114 similarly detectsreception of landing page 202B, intermediate pages 202C and 202D, andconfirmation page 210E in client computer 110A. It is to be noted thatdepending on the application, an end-user does not necessarily have togo through all of the aforementioned web pages to perform a conversion.

[0059] For each of steps 402, 404, 406, and 408, log manager 114 updateslog 116 to indicate, among other information, the page identifiers ofthe received web pages and the time and date they were received.

[0060] In step 410, log 116 is provided to message server computer 140(see FIG. 3).

[0061] In step 412, database 141 and conversion tracker 142 areconfigured to perform conversion tracking. Step 412 is further discussedin connection with FIGS. 5 and 6.

[0062] In step 414, log 116 is received in message server computer 140.

[0063] In step 416, conversion tracker 142 processes log 116.

[0064] In step 418, statistics manager 143 generates statisticalinformation based on data from conversion tracker 142, log 116, and/orauxiliary data 321.

[0065] The present invention provides advantages heretofore unrealized.For one, embodiments of the present invention may be employed toadvantageously determine the effectiveness of an advertising campaign.From statistical information generated by a statistics manager, theamount of traffic from a particular source may be determined. Thisallows a product vendor to spend more of its advertising budget onwebsites that produce the best results. The generated statisticalinformation may also be employed to determine web pages reached or notreached by end-users, the drop-out rate between a landing page and aconfirmation page, and other indicators of the effectiveness of anadvertising campaign. In search results applications, the statisticalinformation may be employed to optimize keywords.

[0066] The present invention also allows one entity to provideconversion tracking capabilities to multiple entities. For example, oneentity, referred to as “the conversion tracking company,” may operate amessage server computer 140 and distribute log managers 114 to severalclient computers 110. The conversion tracking company may offerincentives, such as free software or on-line services, to end-users whodownload a log manager 114 to their client computers. The conversiontracking company may then offer conversion tracking services to otherentities, referred to as “advertisers.” The conversion tracking companymay charge each advertiser for the conversion tracking service, thusspreading the cost of running and maintaining the service. Note that theconversion tracking company is uniquely positioned to provide thetracking service because it has client presence (e.g., log manager 114).This allows the conversion tracking company to monitor end-user browsingactivities across several, separately operated websites. Thus, incontrast to server-based conversion tracking, embodiments of the presentinvention allow an advertiser to obtain conversion tracking capabilitywithout having to perform substantial modification to the advertiser'sweb site and without having to set-up its own conversion trackinginfrastructure.

[0067]FIGS. 5 and 6 show sample screenshots of user interfaces forconfiguring a conversion tracker 142 and a database 141 in accordancewith an embodiment of the present invention. In one embodiment, thescreenshots shown in FIGS. 5 and 6 comprise web pages received from amessage server computer 140. The user interfaces allow advertisers toconfigure a conversion tracking service over a computer network, such asthe Internet. Data entered by advertisers in the user interfaces may beused to build a translation table 310, and to configure conversiontracker 142.

[0068]FIG. 5 shows a user interface 501 for entering a sequence ofconversion steps. User interface 501 allows entry of the URL of webpages an end-user must navigate through to complete a purchase. The URLof a landing page, if any, may be entered in “Purchase Step #1,” whilethe URL of a confirmation page may be entered in “Confirmation Page.”The URLs of web pages between the landing page and the confirmation pagemay be entered in “Purchase Step #2” and “Purchase Step #3.” Note thatthe advertiser does not have to enter the URL of a web page that is notnecessary to the conversion process. The advertiser may also set a timelimit for the conversion by choosing a time value in “Confirmation TimeLimit.”

[0069]FIG. 6 shows a user interface 601 for entering keywords that willbe tracked. User interface 601 may be employed in applications where anadvertisement is placed as a line item in a search result. With userinterface 601, an advertiser may select keywords such as “cheap airtravel”, “discount air travel,” and so on for tracking. User interface601 also allows the advertiser to select keywords for certain“Categories.” This gives the advertiser a better grouping of thekeywords to be tracked.

[0070]FIGS. 7 and 8 show sample screenshots of user interfaces forgenerating reports in accordance with an embodiment of the presentinvention. In one embodiment, the screenshots shown in FIGS. 7 and 8comprise web pages received from a message server computer 140. The userinterfaces allow advertisers to generate reports over a computernetwork, such as the Internet.

[0071]FIG. 7 shows a user interface 701 for configuring a report ofstatistical information generated by a statistics manager 143. Thereport may be run for a specified date range, day of the week, category,and keywords. As can be appreciated, the configuration and filters for areport will vary depending on the application.

[0072]FIG. 8 shows a user interface 801 for presenting a report. Thereport may be tabbed (e.g., “Performance,” “Cost,”. . . ) to allow anadvertiser to select a particular section of the report for viewing. Thereport may include the number of times an advertisement was displayed(“Impressions”), number of clicks on the advertisement (“Clicks”), theclick-through rate (“CTR”), and the conversion rate (“Conversion”). Inthe example of FIG. 8, keywords in the air travel category (e.g.,“student air travel”) were presented to end-users as part of searchresults 43,712 times, were clicked on 1,906 times, has a click throughrate of 4.36%, has 29 conversions (i.e., 29 end-users who clicked on thesearch result item actually made a purchase), and has a conversion rateof 1.5%. For each category, the report may be for a date range or perday of the week.

[0073] While specific embodiments of the present invention have beenprovided, it is to be understood that these embodiments are forillustration purposes and not limiting. Many additional embodiments willbe apparent to persons of ordinary skill in the art reading thisdisclosure.

What is claimed is:
 1. A method of generating statistical information ina computer network, the method comprising: detecting a first identifyinginformation associated with a first document, the first document beingreceived in a first computer from a second computer in response to anend-user interaction with an impression; and generating a statisticalinformation based at least on the detection of the first identifyinginformation.
 2. The method of claim 1 wherein the impression comprisesan advertisement on an Internet, the first computer comprises a clientcomputer, the first document comprises a web page, and the secondcomputer comprises a server computer.
 3. The method of claim 1 whereinthe impression comprises an advertisement, and wherein the statisticalinformation indicates if the end-user made a purchase based on theadvertisement.
 4. The method of claim 1 wherein the first identifyinginformation comprises addressing information.
 5. The method of claim 1further comprising: detecting a second identifying informationassociated with a second document received in the first computer; andwherein the statistical information is further based on the detection ofthe second identifying information..
 6. The method of claim 5 whereinthe statistical information indicates information regarding a number ofend-users viewing the first document and the second document.
 7. Themethod of claim 5 wherein the first identifying information and thesecond identifying information comprise a uniform resource locator(URL).
 8. A method to be performed in a client computer, the methodcomprising: detecting navigation of a web browser to a first web page asa result of an end-user's interaction with an advertisement displayed ina first computer; detecting navigation of the web browser to aconfirmation web page, the confirmation web page indicating that theend-user made a purchase based on the advertisement; maintaining a logof browsing activities; and providing the log to a server computer forpurposes of generating a statistical information.
 9. The method of claim8 wherein the log comprises an entry indicating detection of thenavigation of the web browser to the first web page.
 10. The method ofclaim 8 wherein the log comprises a first entry indicating detection ofthe navigation of the web browser to the first web page and a secondentry indicating the detection of the navigation of the web browser tothe confirmation web page.
 11. A method to be performed in a servercomputer, the method comprising: receiving an event information from aclient computer, the event information indicating an identifyinginformation for each of at least two documents received in the clientcomputer; and generating a statistical information based on the eventinformation.
 12. The method of claim 11 wherein the event informationfurther indicates a time stamp for each of the at least two documents.13. The method of claim 11 wherein the at least two documents comprisean advertisement page and a confirmation page, and wherein theconfirmation page indicates that an end-user who interacted with anadvertisement in the advertisement page made a purchase based on theadvertisement.
 13. The method of claim 11 wherein the at least twodocuments comprise a landing page and a confirmation page, wherein thelanding page comprises a web page where a browser is pointed to after anend-user interacts with an advertisement, and wherein the confirmationpage comprises a web page indicating that the end-user made a purchasebased on the advertisement.
 14. A client computer in a computer network,the computer having memory comprising: computer-readable program codefor detecting reception of a first web page as a result of an end-userinteraction with an advertisement; and computer-readable program codefor detecting reception of a confirmation web page, the confirmation webpage indicating that the end-user made a purchase based on theadvertisement; and computer-readable program code for informing a servercomputer of the reception of the first web page for purposes ofgenerating a statistical information.
 15. The method of claim 14 furthercomprising: computer-readable program code for Informing the servercomputer of the reception of the confirmation web page for purposes ofgenerating a statistical information.
 16. A system configured togenerate statistical information in a computer network, the systemcomprising: a first computer configured to detect a first identifyinginformation associated with a first document; and a second computerconfigured to receive an event information from the first computer, theevent information indicating detection of the first identifyinginformation, the second computer further configured to generate astatistical information based on the event information.
 17. The systemof claim 16 wherein the first computer is further configured to detect asecond identifying information associated with a second document, andwherein the event information received by the second computer furtherindicates the detection of the second identifying information.
 18. Thesystem of claim 16 wherein the first identifying information comprisesan addressing information.
 19. The system of claim 18 wherein theaddressing information comprises a uniform resource locator (URL). 20.The system of claim 16 wherein the statistical information comprisesdata on how many end-users purchased a product based on anadvertisement.